9 N ov 2 00 1 WEAP 034 CONVERTING EQUIPMENT CONTROL SOFTWARE FROM PASCAL TO C

نویسنده

  • C Pascal
چکیده

The equipment control (EC) software of the GSI accelerators has been written entirely in Pascal. Modern software development is based on C++ or Java. To be prepared for the future, we decided to convert the EC software from Pas-cal to C in a first step. Considering the large amount of software, this is done automatically as far as possible. The paper describes our experiences gained using a Pascal to C translator, Perl scripts, and, of course, some manual interaction. 1 MOTIVATION The EC software comprises the device representation layer, the real-time layer, and the device drivers [1]. Except for some assembler code, it has been written entirely in Pascal. For embedded applications there are no integrated cross development systems that support Pascal any more. The system we use runs under VMS and its support expires completely by the end of 2001. However until now we invested about 40 person-years in developing and maintaining EC software. A lot of special know-how has gone especially into the real-time layer. The functionality gained in this work must be preserved. Future control system developments have to be realized with modern object-oriented methodes. Appropriate up-to-date tools are based on C++ or Java nearly without exception. Existing hardware (400 VME boards) has to be used in the future as well since it cannot be replaced completely due to cost reasons. And, last but not least, the conversion must not affect the day by day accelerator operation. 2 CONVERSION We decided to convert the EC software from Pascal to C in a first step. This allows us to " re-use " the software on one hand and to establish a basis for re-engineering the control system with modern methods and tools [2] on the other hand. Considering that EC software consists of about 170 000 lines of code (LOC), comments not counted, it is clear that conversion has to be done automatically as far as possible. The basis for a conversion is EC software for one device class. There are 61 different device classes, each one controlled by dedicated software. To ease the conversion, we issued a cookbook [3] that describes the process step by step. To convert the Pascal code into C automatically we use the Pascal to C translator p2c 1. Perl scripts are used to adapt the notation of identifiers to our style guide. In spite of the automation there is a lot of …

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001